home *** CD-ROM | disk | FTP | other *** search
- package Code.FIELD.helpers
- {
- import Box2D.Common.Math.b2Vec2;
- import Code.FIELD._dq803;
- import Code.FIELD._vq741;
- import Code.FIELD.body._cl647;
- import Code.LIB._id116;
- import Code.LIB._nc381;
-
- public class _nq133
- {
- public static const SHAPE_RL:Array = [[1,0],[1,0],[1,1]];
-
- public static const SHAPE_LL:Array = [[0,1],[0,1],[1,1]];
-
- public static const SHAPE_BLOCK:Array = [[1,1],[1,1]];
-
- public static const SHAPE_T:Array = [[1,1,1],[0,1,0]];
-
- public static const SHAPE_TR:Array = [[1,0],[1,1],[1,0]];
-
- public static const SHAPE_BIG1:Array = [[0,1,0],[1,1,1],[0,1,0]];
-
- public static const SHAPE_T2:Array = [[1,0],[1,1],[1,0]];
-
- public static const SHAPES:Array = [SHAPE_BLOCK,SHAPE_LL,SHAPE_RL,SHAPE_T,SHAPE_TR,SHAPE_BIG1,SHAPE_T2];
-
- public static const stWait:int = 0;
-
- public static const stNewShape:int = 1;
-
- public static const stNone:int = 2;
-
- private var iField:_dq803;
-
- private var iTimer:int;
-
- private var iState:int;
-
- public var iRandomizer:_id116;
-
- private var iShapeDelay:int;
-
- private var iBonusDelay:int;
-
- private var iBonusTimer:int;
-
- public function _nq133(param1:_dq803, param2:int, param3:int, param4:int)
- {
- super();
- iField = param1;
- iShapeDelay = param2;
- iBonusDelay = param3;
- iRandomizer = new _id116(param4,5);
- iBonusTimer = iBonusDelay - iBonusDelay / 5 + iRandomizer._qm468(iBonusDelay / 5);
- State = stNone;
- }
-
- public function stop() : void
- {
- iState = stNone;
- }
-
- private function _xy684() : void
- {
- var _loc1_:int = 0;
- var _loc2_:int = 0;
- var _loc3_:int = 0;
- var _loc4_:Array = null;
- var _loc5_:b2Vec2 = null;
- _loc1_ = 0;
- _loc2_ = 1;
- _loc3_ = iRandomizer._qm468(10) <= 5 ? _loc1_ : _loc2_;
- _loc4_ = iField.iEmitPoints;
- _loc5_ = b2Vec2(_loc4_[iRandomizer._qm468(_loc4_.length - 1)])._ib196();
- _loc5_.y -= 120;
- if(_loc3_ == _loc1_)
- {
- iField.iWorld._tp19(_loc5_);
- }
- else
- {
- iField.iWorld._dj378(_loc5_);
- }
- }
-
- public function _li69(param1:Array, param2:b2Vec2, param3:Number) : _cl647
- {
- var _loc4_:Array = null;
- var _loc5_:int = 0;
- var _loc6_:int = 0;
- var _loc7_:_cl647 = null;
- var _loc8_:int = 0;
- var _loc9_:int = 0;
- _loc4_ = _nc381._fl158(param1);
- _loc5_ = -999;
- _loc6_ = 0;
- while(_loc6_ < _loc4_.length)
- {
- _loc8_ = 0;
- while(_loc8_ < _loc4_[_loc6_].length)
- {
- if(_loc4_[_loc6_][_loc8_] != 0)
- {
- _loc9_ = iRandomizer._qm468(iField.iWorld.iMaxColor) + 1;
- if(_loc5_ == _loc9_)
- {
- _loc9_ = iRandomizer._qm468(iField.iWorld.iMaxColor) + 1;
- }
- _loc4_[_loc6_][_loc8_] = _loc9_;
- _loc5_ = _loc9_;
- }
- _loc8_++;
- }
- _loc6_++;
- }
- return _vq741._rc653(iField.iWorld,param2,_loc4_,iField.iWorld.iShapeType,param3);
- }
-
- public function start() : void
- {
- iState = stWait;
- }
-
- public function set State(param1:int) : void
- {
- iState = param1;
- switch(iState)
- {
- case stWait:
- iTimer = 0;
- }
- }
-
- public function onEnterFrame() : void
- {
- switch(iState)
- {
- case stWait:
- if(++iTimer > iShapeDelay)
- {
- iTimer = 0;
- _to710();
- }
- if(--iBonusTimer <= 0 && Math.abs(iShapeDelay - iTimer) > 50)
- {
- _xy684();
- iBonusTimer = iBonusDelay - iBonusDelay / 5 + iRandomizer._qm468(iBonusDelay / 5);
- }
- }
- }
-
- public function _nt308() : void
- {
- var _loc1_:Array = null;
- var _loc2_:b2Vec2 = null;
- _loc1_ = SHAPES[iRandomizer._qm468(SHAPES.length - 1)];
- _loc2_ = iField.iEmitPoints[iRandomizer._qm468(iField.iEmitPoints.length - 1)];
- _li69(_loc1_,_loc2_,iField.iWorld.iSize);
- }
-
- public function _to710() : void
- {
- var _loc1_:Array = null;
- var _loc2_:Array = null;
- var _loc3_:b2Vec2 = null;
- var _loc4_:b2Vec2 = null;
- _loc1_ = SHAPES[iRandomizer._qm468(SHAPES.length - 1)];
- _loc2_ = iField.iEmitPoints.slice(0,iField.iEmitPoints.length);
- _loc3_ = b2Vec2(_loc2_.pop())._ib196();
- _loc4_ = b2Vec2(_loc2_.pop())._ib196();
- _li69(_loc1_,_loc3_,iField.iWorld.iSize);
- _li69(_loc1_,_loc4_,iField.iWorld.iSize);
- trace("body1",_loc3_.x,_loc3_.y);
- trace("body2",_loc4_.x,_loc4_.y);
- }
- }
- }
-
-